The Internet Message Access Protocol (commonly known as IMAP or IMAP4) is an application layer Internet protocol operating on port 143 that allows a local client to access email messages on a remote server. IMAP4 and POP3 are the two most prevalent Internet standard protocols for email retrieval. Virtually all modern email clients and servers support both.
IMAP supports both connected (online) and disconnected (offline) modes of operation. E-mail clients using IMAP generally leave messages on the server until the user explicitly deletes them. This and other facets of IMAP operation allow multiple clients to access the same mailbox. Most email clients support either POP3 or IMAP to retrieve messages. However, fewer Internet Service Providers (ISPs) support IMAP.
E-mail messages are generally sent to an email server that stores received messages in the recipient's email mailbox. The user later retrieves these messages with either a web browser or an email client that uses one of a number of email retrieval protocols. While some clients and servers prefer to use vendor-specific, proprietary protocols, most support the Internet standard protocols SMTP for sending email and POP3 and IMAP4 for retrieving email, allowing interoperability with other servers and clients. For example, Microsoft's Outlook client typically uses a proprietary protocol to communicate with an Exchange server as does IBM's Notes client when communicating with a Domino server, but all of these products also support SMTP, POP3, and IMAP4.
IMAP allows users to access new messages instantly on their computers, since the mail is stored on the network. With POP3, users either download the email to their computer or access it via the web. Both methods take longer than IMAP, and the user must either download any new mail or "refresh" the page to see the new messages.
Advantages over POP3 protocol:
Case-sensitivity for IMAP folders
Although RFC 3501 (IMAP protocol) treats folder names as case sensitive (with the exception of "INBOX" folder) the actual behavior varies with different servers. Some servers allow case sensitive folder names, while others treat names differing only in lower/upper case letters to be equal. It may depend on the platform or file system the server is running on. Moreover, it may even depend on the folder hierarchy where some parts are case sensitive (eg. personal folders), while others are not (eg. archive stored on a different file system). RFC 3501 provides no provisions for detecting whether a server or particular folder hierarchy is case sensitive or not. This all stems from the original design of the IMAP to work on a variety of existing message stores. It doesn't accurately reflect the current situation where many IMAP implementations are deployed as cloud services or where a message store format is dictated by particular server implementation.
Similarly, clients don't always handle case sensitivity correctly. For clients that use the local file system as folder storage, the case sensitivity of the file system could play a role. Traditional MBOX or MailDir storage systems will behave as case-sensitive on most Windows systems thus causing issues when server contains conflicting folder names differing in a letter case.
In eM Client we try to preserve the case of folder names as entered by the user or sent by the server. However, we do not allow two folders with the same name differing by the letter case to be present at the same level in a hierarchy. We have to work with a large variety of servers and interoperate with mailboxes accessed by multiple different clients (including mobile ones). In addition, we allow offline operation where we cannot immediately get a feedback from a server on what operations succeeded and which one didn't. This involves many use cases where interoperability problems could occur if full case-sensitivity was allowed. The number of servers and clients properly supporting case-sensitivity folder names was deemed so small that we found supporting it was not worthwhile
Post Office Protocol version 3 (commonly known as POP3) supports end-users with intermittent connections (such as dial-up connections), allowing these users to retrieve email when connected and then to view and manipulate the retrieved messages without needing to stay connected. Although most clients have an option to leave mail on server, email clients using POP3 generally connect, retrieve all messages, store them on the user's PC as new messages, delete them from the server, and then disconnect.
The fundamental difference between POP3 and IMAP4 is that POP3 offers access to a mail drop; the mail exists on the server until it is collected by the client. Even if the client leaves some or all messages on the server, the client's message store is considered authoritative. In contrast, IMAP4 offers access to the mail store; the client may store local copies of the messages, but these are considered to be a temporary cache and the server's store is authoritative.
Simple Mail Transfer Protocol (commonly known as SMTP) is a relatively simple, text-based protocol, in which one or more recipients of a message are specified (and in most cases verified to exist) along with the message text and possibly other encoded objects. The message is then transferred to a remote server using a procedure of queries and responses between the client and server. To do this a mail client must use POP3 or IMAP. Another SMTP server can trigger a delivery in SMTP using ETRN.
Either an end-user's email client, a.k.a. MUA (Mail User Agent), or a relaying server's MTA (Mail Transport Agents) can act as an SMTP client. An email client knows the outgoing mail SMTP server from its configuration. A relaying server typically determines which SMTP server to connect to by looking up the MX (Mail eXchange) DNS record for each recipient's domain name (the part of the email address to the right of the at (@) sign). Conformant MTAs (not all) fall back to a simple A record in the case of no MX. Some current mail transfer agents will also use SRV records, a more general form of MX, though these are not widely adopted. (Relaying servers can also be configured to use a smart host.) The SMTP client initiates a TCP connection to server's port 25 (unless overridden by configuration). SMTP is a "push" protocol that does not allow one to "pull" messages from a remote server on demand.
Tip: If you are not sure whether to use POP3 or IMAP protocol, then use IMAP because of significant advantages over POP3.